/*
 *    Copyright (c) 2018-2025, boss All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright
 * notice, this list of conditions and the following disclaimer in the
 * documentation and/or other materials provided with the distribution.
 * Neither the name of the boss developer nor the names of its
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
 * Author: boss
 */

package com.hopes.bizz.hazard.setting.dto;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.hopes.bizz.common.core.annotation.ExcelDictImportValidate;
import com.hopes.bizz.common.core.annotation.ExcelDictValidate;
import com.hopes.bizz.common.core.validate.validator.ExcelDictImportValidator;
import com.hopes.boss.admin.api.resolver.enums.AdminDictEnum;
import com.hopes.boss.common.entity.ExcelDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;


/**
 * 监控因子设置
 *
 * @author daijie
 * @date 2023-10-31 16:52:06
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class HazBasicFactorConfigExcelDTO extends ExcelDTO {

    private static final long serialVersionUID = 1L;


    /**
     * ID
     */
    @ExcelIgnore
    @ExcelProperty("ID")
    private Long id;

    /**
     * 所属企业
     */
    @ExcelProperty("所属企业")
    @ExcelDictImportValidate(enumResolver = "sys_company", message = "所属企业解析异常")
    private String orgIdStr;

    /**
     * 所属模块
     */
    @ExcelProperty("所属模块")
    @ExcelDictImportValidate(enumResolver = "park_factor_module", message = "所属模块解析异常")
    private String moduleCodeStr;

    /**
     * 因子类型
     */
    @ExcelProperty("因子类型")
    @ExcelDictImportValidate(enumResolver = "park_factor_type", message = "因子类型解析异常")
    private String factorTypeStr;

    /**
     * 因子名称
     */
    @ExcelProperty("因子名称")
    private String name;


    /**
     * 因子编码
     */
    @ExcelProperty("因子编码")
    private String code;

    /**
     * 缩略名称
     */
    @ExcelProperty("缩略名称")
    private String shortName;

    /**
     * 计量单位
     */
    @ExcelProperty("计量单位")
    private String unitName;

    /**
     * 是否启用
     */
    @ExcelProperty("是否启用")
    @ExcelDictImportValidate(enumResolver = "yes_no_type", message = "是否启用解析异常")
    private String useFlagStr;

    /**
     * 排序编号
     */
    @ExcelProperty("排序编号")
    private Integer sortNum;

    /**
     * 备注说明
     */
    @ExcelProperty("备注说明")
    private String remarks;

}
